The present invention relates to techniques for customizing displayed content in a document based on user activity.
When presenting information to a user, it is often challenging to make sure that it is easy to understand and to use. These challenges are even greater in dynamic environments where the information is changing and growing in size.
For example, many websites, such as social networks, encourage users to contribute content, which is then instantaneously displayed on the websites. However, over time, popular websites can become very complicated, including multiple types of content, multiple ‘conversations’ (in which groups of users interact with each other), and multiple links to related websites. As a consequence, these websites can become visually cluttered, which makes it increasingly difficult for users to find relevant or interesting information on them (such as recently added or popular content). This degradation in the ability of users to effectively use such websites has a negative impact on the user experience, which can limit or even decrease the popularity of these websites, with a commensurate impact on advertising revenue.
Similar problems occur in user interfaces. For example, many software applications include multiple functions. However, as the number of functions grows, it becomes increasingly difficult for users to find desired functions amid a sea of possibilities. Consequently, most users are only aware of and only use a small subset of the capabilities of a given software application, which obviates the advantages of the unused (indeed, often unknown) capabilities. In addition, the need to maintain a familiar (albeit crowded) user interface prevents software developers from adding new features or improving suboptimal user interfaces.